
#ifndef QRENDERTEXTURE_H
#define QRENDERTEXTURE_H

#include <vector>
#include <string>
#include <iostream>
#include <sstream>

#include "glew.h"

class QRenderTexture
{
public:
    QRenderTexture();
    QRenderTexture(unsigned int id, unsigned int unit, unsigned int target, unsigned int format, unsigned int type, const std::string &name, const std::vector<unsigned int> &size);
    ~QRenderTexture();
    unsigned int id;
    unsigned int unit;
    unsigned int target;
    unsigned int format;
    unsigned int type;
    std::string name;
    std::vector<unsigned int> size;
    static void addTexture(std::vector<QRenderTexture> &textures, const std::string &name, const std::vector<unsigned int> &size, void *data, int internalFormat, unsigned int format, unsigned int type);
    static void updateTexture(std::vector<QRenderTexture> &textures, int index, void *data);
    static int findTexture(std::vector<QRenderTexture> &textures, const char *name, int start = 0);
private:

};

#endif  // QRENDERTEXTURE_H